home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / tcoop.arc / TCOOP2.ARC / TFSOUNIT.H < prev    next >
Encoding:
C/C++ Source or Header  |  1991-10-26  |  1.3 KB  |  48 lines

  1. // tfsounit.h: Text-Based Framed Screen Object (Tfso) Class
  2.  
  3. #ifndef H_TFSOUNIT
  4. #define H_TFSOUNIT
  5.  
  6. #include <string.h>
  7. #include "trsounit.h"
  8. #include "fsounit.h"
  9.  
  10. class Tfso : public Fso {
  11. public:
  12.   Trso *SaveBuff;
  13.   Tfso *HzShadow, *VtShadow;
  14.   Tfso(int Ba, int Fa, ColorPak &Cp);
  15.   virtual ~Tfso(void);
  16.   virtual void SetSize(int W, int H); 
  17.   virtual void SetLocn(int Xl, int Yl); 
  18.   virtual int  OnCloseButton(int X, int Y); 
  19.   virtual void DrawFrame(char Ba, char Attr);
  20.   virtual void Clear(char Ch, char Attr);
  21.   virtual void GetImage(Rect *C);
  22.   virtual void PutImage(Rect *C);
  23.   virtual void ShadowXfr(Rect *C, XfrDirn Xd, int DrawIt);
  24.   virtual void DrawShadows(Rect *C, XfrDirn Xd, int Drawit);
  25.   virtual void Swap(Rect *C, XfrDirn Xd);
  26.   virtual int  TextWidth(char *Str) { return strlen(Str); }
  27.   virtual int  TextHeight(int N)    { return N; }
  28. };
  29.  
  30. // --- Text based "skeleton" framed screen objects --- 
  31.  
  32. class Tskel : public Fso {
  33. public:
  34.   Trso *Sides[4]; // Top, Bottom, Left, Right
  35.   Tskel(ColorPak &Cp);
  36.   virtual ~Tskel(void);
  37.   virtual void SetSize(int W, int H); 
  38.   virtual void DrawFrame(char Ba, char Attr);
  39.   virtual void GetImage(Rect *C);
  40.   virtual void PutImage(Rect *C);
  41.   virtual void Swap(Rect *C, XfrDirn Xd);
  42. };
  43.  
  44. extern TxBuff ScrnBuff; // The text buffer representing the screen
  45.  
  46. #endif
  47.  
  48.